package cn.tannn.cat.tmq.core;

import java.util.Map;
import java.util.concurrent.ConcurrentHashMap;

/**
 * MQ中间人(代理商,管理 message queue
 * <p> 所有的mq数据的操作都要经它来操作
 *
 * @author <a href="https://t.tannn.cn/">tnnn</a>
 * @version V1.0
 * @date 2024/7/7 下午1:43
 */
public class TBroker {

    Map<String, TMq> topics = new ConcurrentHashMap<>();

    /**
     * 获取MQ
     *
     * @param topic 消息主题
     * @return mq
     */
    public TMq find(String topic) {
        return topics.get(topic);
    }


    /**
     * 创建 topic
     *
     * @param topic 消息主题
     */
    public TMq createTopic(String topic) {
        return topics.putIfAbsent(topic, new TMq(topic));
    }


}
